feat: add optional --label flag to fm-spawn - #9
Conversation
|
Warning Review limit reached
Next review available in: 33 minutes Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available. How can I continue?After more reviews become available, a review can be triggered using the To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews. How do review limits work?CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability. For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window. Please refer docs for additional details. Review details⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (3)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
- Add --label <slug> flag to fm-spawn.sh flag parsing - When provided, use it for the tab label with fm- prefix (e.g., fm-<slug>) - Fall back to default fm-<ID> behavior when --label is absent (fully backward compatible) - Record label=<slug> in state/<id>.meta when a non-default label is used - Document the new optional label field in docs/configuration.md
1c518d8 to
6348286
Compare
Intent
Implement optional --label flag for fm-spawn.sh
What Changed
--label <string>flag tofm-spawn.shfor customizing task window labels; without the flag, windows default tofm-<task-id>.--label=valueand--label valuesyntax with validation to reject empty values; works across batch dispatch.label=in task metadata only when explicitly passed at spawn, preserving backward-compatibility by keeping default metadata byte-identical.Risk Assessment
✅ Low: The change is straightforward, well-bounded, follows established patterns for optional flags, and maintains full backwards compatibility with proper metadata handling.
Testing
Validated --label flag implementation through unit tests (7/7 passed), static code analysis (9/9 checks passed), documentation verification (2/2 checks passed), and regression testing of all existing spawn-related test suites (4/4 suites pass). The feature correctly parses flags in both syntaxes, validates non-empty values, conditionally sets custom window names, and conditionally records labels in task metadata while preserving default behavior when the flag is omitted.
Evidence: Flag Parsing Unit Tests
Evidence: Comprehensive Code Verification Tests
Evidence: Implementation Flow Demonstration
Evidence: Detailed Verification Report
Evidence: Testing Summary
Pipeline
Updates from git push no-mistakes
✅ **intent** - passed
✅ No issues found.
✅ **Rebase** - passed
✅ No issues found.
✅ **Review** - passed
✅ No issues found.
✅ **Test** - passed
✅ No issues found.
Flag parsing logic: 7/7 unit tests passedFlag syntax support: both --label=value and --label value verifiedEmpty label validation: correctly rejects empty valuesCode implementation verification: 9/9 checks passedWindow naming logic verified at lines 953-957Metadata recording verified at line 1463Documentation updated in docs/configuration.mdRegression tests: fm-spawn-dispatch-profile.test.sh all passRegression tests: fm-spawn-batch.test.sh all passRegression tests: fm-spawn-worktree-settle.test.sh all passRegression tests: fm-spawn-parlay.test.sh all pass✅ **Document** - passed
✅ No issues found.
✅ **Lint** - passed
✅ No issues found.
✅ **Push** - passed
✅ No issues found.